package com.qujia.fleet.service;

import com.qujia.fleet.domain.FleetCardSub;
import com.qujia.fleet.domain.form.FleetCardSubAddForm;
import com.qujia.fleet.domain.form.FleetCardSubForm;
import com.qujia.fleet.domain.form.FleetCardSubQueryForm;
import com.qujia.fleet.domain.vo.FleetCardSubVo;

import java.math.BigDecimal;
import java.util.List;

public interface FleetCardSubService {
    /**
     * 查询车队卡子卡列表
     *
     * @param fleetCardSubQueryForm 车队卡子卡
     * @return 车队卡子卡集合
     */
    List<FleetCardSubVo> selectFleetCardSubList(FleetCardSubQueryForm fleetCardSubQueryForm);

    List<FleetCardSub> selectByFleetCardId(Long fleetCardId);

    List<FleetCardSub> selectAllByFleetCardId(Long fleetCardId);

    /**
     * 修改车队卡子卡
     *
     * @param fleetCardSub 车队卡子卡
     * @return 结果
     */
    int updateFleetCardSub(FleetCardSub fleetCardSub);

    int updateFleetCardSub(Long id, FleetCardSubForm fleetCardSubForm);

    int updateAllocationAmount(BigDecimal allocationAmount, Long id);

    int recovery(Long id);

    int review(Long id, Integer status);

    int deleted(List<Long> ids);

    List<FleetCardSub> query(FleetCardSub fleetCardSubQuery);

    List<FleetCardSub> selectFleetCardSubByIdAndSecondary(Long id);

    int addFleetCardSub(FleetCardSubAddForm fleetCardSubAddForm);
}
